home *** CD-ROM | disk | FTP | other *** search
/ GRAVIS Top 100 #1 / GRAVIS CD No1_Herbst_94.cdr / Deneba / Canvas™ 3.5.2 US / Canvas Tools / Separations / Separations.rsrc / hd11_1011_Separation defs < prev    next >
Text File  |  1994-05-20  |  7KB  |  288 lines

  1. %---Sep stuff
  2. /CurrentProc{currentscreen exch pop exch pop}bdf
  3. /CurrentFreq{currentscreen pop pop}bdf
  4. /CurrentAngle{currentscreen pop exch pop}bdf
  5. /dopageclip{initmatrix pgl dup pgt moveto pgb lineto pgr pgb lineto pgr pgt lineto pgl pgt lineto closepath clippath newpath}bdf
  6. /doSepStuff {
  7. /inch {72 mul} bdf
  8. /UCRB 0.5 def
  9. /UCRM 0.31 def
  10. /UCRY 0.48 def
  11. /setAngles{/blackAngle edf/yellowAngle edf/magentaAngle edf/cyanAngle edf}bdf
  12. /DoColor{color dup 2 copy dup 0 eq{black}if 1 eq{yellow}if 2 eq{magenta}if 3 eq{cyan}if 4 eq{comp}if}bdf
  13. /getScale{1 1 rotmtx defaultmatrix dtransform 1 1 dtransform 4 2 roll exch 3 index div exch 2 index div 4 2 roll pop pop}bdf
  14. /regMarks{gsave translate getScale scale 0.3 setlinewidth newpath
  15. 10 0 moveto 0 0 10 0 360 arc 1 setgray fill
  16. 0 setgray 8 0 moveto 0 0 8 0 360 arc
  17. -10 0 moveto 10 0 lineto 0 -10 moveto 0 10 lineto stroke
  18. 4 0 moveto 0 0 4 0 360 arc fill
  19. -4 0 moveto 4 0 lineto 0 -4 moveto 0 4 lineto 1 setgray stroke grestore}bdf
  20. /doregmarks{/addamt getScale pop 12 mul abs def systemdict begin 
  21. pgl addamt add  pgb addamt sub regMarks
  22. pgl addamt add  pgt addamt add regMarks
  23. pgr addamt sub  pgb addamt sub regMarks
  24. pgr addamt sub  pgt addamt add regMarks
  25. end}def
  26. /objColor 4 array def
  27. /SepSetUp{/JName edf/Names edf/Marks edf/DocumetName edf}bdf
  28. /showJName{ pgl 150 add pgt 10 add moveto DocumetName show}bdf
  29. /dooptions{Marks{doregmarks}if JName{showJName}if}bdf 
  30. /crpln{gsave .3 DocScale div setlinewidth newpath 4 2 roll translate 0 5 2 index mul moveto 0 15 DocScale div 3 -1 roll mul rlineto 5 1 index mul 0 moveto 15 DocScale div mul 0 rlineto systemdict begin 0 setgray end stroke grestore}bdf
  31. /Crops{gsave 2 copy 1 1 crpln 3 index exch -1 1 crpln 1 index 1 -1 crpln -1 -1 crpln grestore}bdf
  32. /cyan {
  33. /color 3 def
  34. /addamt getScale pop abs def
  35. Freq cyanAngle /CSepProc load setscreen
  36. 0 setgray
  37. gsave
  38. dopageclip
  39. systemdict begin 0 setgray end
  40. pgl 100 addamt mul add pgb 9 addamt mul sub moveto
  41. FontDirectory /GothicBBB-Medium-83pv-RKSJ-H known
  42. {/GothicBBB-Medium-83pv-RKSJ-H}
  43. {/Times-Roman}ifelse findfont
  44. 9 addamt mul scalefont setfont
  45. Names{(CYAN) show}if
  46. dooptions
  47. grestore
  48. } def
  49. /magenta {
  50. /color 2 def
  51. /addamt getScale pop abs def
  52. Freq magentaAngle /MSepProc load setscreen
  53. 0 setgray
  54. gsave
  55. dopageclip
  56. systemdict begin 0 setgray end
  57. pgl 200 addamt mul add pgb 9 addamt mul sub moveto
  58. FontDirectory /GothicBBB-Medium-83pv-RKSJ-H known
  59. {/GothicBBB-Medium-83pv-RKSJ-H}
  60. {/Times-Roman}ifelse findfont
  61. 9 addamt mul scalefont setfont
  62. Names{(MAGENTA) show}if
  63. dooptions
  64. grestore
  65. } def
  66. /yellow {
  67. /color 1 def
  68. /addamt getScale pop abs def
  69. Freq yellowAngle /YSepProc load setscreen
  70. 0 setgray
  71. gsave
  72. dopageclip
  73. systemdict begin 0 setgray end
  74. pgl 300 addamt mul add pgb 9 addamt mul sub moveto
  75. FontDirectory /GothicBBB-Medium-83pv-RKSJ-H known
  76. {/GothicBBB-Medium-83pv-RKSJ-H}
  77. {/Times-Roman}ifelse findfont
  78. 9 addamt mul scalefont setfont
  79. Names{(YELLOW) show}if
  80. dooptions
  81. grestore
  82. } def
  83. /black
  84. {
  85. /color 0 def
  86. /addamt getScale pop abs def
  87. Freq blackAngle /BSepProc load setscreen
  88. 0 setgray
  89. gsave
  90. dopageclip
  91. systemdict begin 0 setgray end
  92. pgl 400 addamt mul add pgb 9 addamt mul sub moveto
  93. FontDirectory /GothicBBB-Medium-83pv-RKSJ-H known
  94. {/GothicBBB-Medium-83pv-RKSJ-H}
  95. {/Times-Roman}ifelse findfont
  96. 9 addamt mul scalefont setfont
  97. Names{(BLACK) show}if
  98. dooptions
  99. grestore
  100. } def
  101. /comp {
  102. gsave
  103. /addamt getScale pop abs def
  104. dopageclip
  105. systemdict begin 0 setgray end
  106. pgl 100 addamt mul add pgb 9 addamt mul sub moveto
  107. FontDirectory /GothicBBB-Medium-83pv-RKSJ-H known
  108. {/GothicBBB-Medium-83pv-RKSJ-H}
  109. {/Times-Roman}ifelse findfont
  110. 9 addamt mul scalefont setfont
  111. Names{(Composite) show}if
  112. dooptions
  113. grestore
  114. } def
  115. color 4 ne{
  116. COver MOver YOver BOver or or or
  117. {
  118. /oktodo
  119. {
  120. currentgray 1 eq
  121. {
  122. COver{objColor 0 get}{F}ifelse 
  123. MOver{objColor 1 get}{F}ifelse 
  124. YOver{objColor 2 get}{F}ifelse
  125. BOver{objColor 3 get}{F}ifelse
  126. or or or not
  127. }
  128. {T}ifelse
  129. }bdf
  130. /stroke{oktodo{systemdict begin stroke end}{newpath}ifelse}bdf
  131. /fill{oktodo{systemdict begin fill end}{newpath}ifelse}bdf
  132. /eofill{oktodo{systemdict begin eofill end}{newpath}ifelse}bdf
  133. /awidthshow{oktodo{systemdict begin awidthshow end}{6{pop}repeat}ifelse}bdf
  134. /show{oktodo{systemdict begin show end}{pop}ifelse}bdf
  135. }{
  136. /stroke{systemdict begin stroke end}bdf
  137. /fill{systemdict begin fill end}bdf
  138. /eofill{systemdict begin eofill end}bdf
  139. }ifelse
  140. /setgray {
  141. dup F F F 4 -1 roll 1 ne objColor astore pop
  142. color 0 eq {
  143. systemdict begin setgray end
  144. }{
  145. pop systemdict begin 1 setgray end
  146. } ifelse
  147. } def
  148. /setmkcolor{do_ucrblack 4 1 roll do_correct 4 -1 roll 4 copy 1 1 4{pop 1 ne 4 1 roll}for objColor astore pop}bdf
  149. /setcmykcolor {
  150. 4 copy 1 1 4{pop 0 ne 4 1 roll}for objColor astore pop
  151. color index 1 exch sub systemdict begin setgray end pop pop pop pop
  152. } def
  153. /setrgbcolor {
  154. color 0 eq {
  155. setmkcolor
  156. systemdict begin setgray end pop pop pop}
  157. {
  158. setmkcolor pop
  159. color 1 sub index
  160. systemdict begin setgray end
  161. pop pop pop
  162. } ifelse
  163. } def
  164. /do_correct {
  165. cvtrgbcym
  166. 1 index UCRY mul sub dup 0 lt{ pop 0}if 3 1 roll
  167. 1 index UCRM mul sub dup 0 lt{ pop 0}if 3 1 roll
  168. 3 1 roll
  169. cvtrgbcym
  170. } def
  171. /do_ucrblack {
  172. 3 copy 1 index eq 3 1 roll eq and{pop pop 1 1 1 4 -1 roll}{
  173. cvtrgbcym
  174. cmin 3 index cmin
  175. /mincolor edf
  176. pop pop
  177. /ucramt mincolor UCRB sub
  178. dup 0 lt{ pop 0} if 2 div def
  179. ucramt sub 3 1 roll
  180. ucramt sub 3 1 roll
  181. ucramt sub 3 1 roll
  182. cvtrgbcym
  183. ucramt 1.25 mul
  184. 1 exch sub}ifelse
  185. } def
  186. /cvtrgbcym {
  187. 3 {1 exch sub 3 1 roll} repeat
  188. } def
  189. /cmin {
  190. 2 copy lt {1}{0} ifelse
  191. index
  192. } def
  193. }if
  194. /colorimage
  195. {/ncolors edf
  196. /multiproc edf
  197. color 4 ne{ncolors 1 eq{color 0 eq color 4 eq or{i}{
  198. 3 1 roll pop pop
  199. 3 1 roll
  200. /h edf
  201. /w edf
  202. gsave
  203. newpath
  204. 0 0 moveto 
  205. 1 0 rlineto
  206. 0 1 rlineto
  207. -1 0 rlineto
  208. closepath erasefill
  209. grestore
  210. h exch repeat}ifelse}{multiproc{ncolors 4 eq{
  211. /proc3 edf
  212. /proc2 edf
  213. /proc1 edf
  214. /proc0 edf
  215. {
  216. proc0 color 3 ne{pop}if
  217. proc1 color 2 ne{pop}if
  218. proc2 color 1 ne{pop}if
  219. proc3 color 0 ne{pop}if}i}{
  220. /proc2 edf
  221. /proc1 edf
  222. /proc0 edf
  223. {
  224. proc0    /st0 edf
  225. proc1    /st1 edf
  226. proc2    /st2 edf
  227. 0 1 st0 length 1 sub{dup
  228. st0 exch get 255.0 div
  229. exch dup st1 exch get 255.0 div
  230. exch dup st2 exch get 255.0 div
  231. exch
  232. 4 1 roll
  233. do_ucrblack
  234. /b edf
  235. do_correct
  236. /y edf
  237. /m edf
  238. /c edf
  239. color 3 eq{c}if
  240. color 2 eq{m}if
  241. color 1 eq{y}if
  242. color 0 eq{b}if
  243. 255.0 mul cvi
  244. cvi st0 3 1 roll put}for
  245. st0}i}ifelse}{/proc0 edf
  246. ncolors 4 eq{{
  247. proc0 dup
  248. /st0 edf
  249. 0 exch
  250. 4 exch
  251. length
  252. dup 4 div cvi string /st1 edf
  253. 4 sub{
  254. color 3 eq{dup st0 exch get}if
  255. color 2 eq{dup 1 add st0 exch get}if
  256. color 1 eq{dup 2 add st0 exch get}if
  257. color 0 eq{dup 3 add st0 exch get}if
  258. exch 4 div cvi exch    cvi
  259. st1 3 1 roll put}for
  260. st1}}{{
  261. proc0 dup 
  262. /st0 edf
  263. 0 exch
  264. 3 exch
  265. length
  266. dup 3 div cvi string /st1 edf
  267. 3 sub{
  268. dup st0 exch get 255.0 div
  269. exch dup 1 add st0 exch get    255.0 div
  270. exch dup 2 add st0 exch get    255.0 div
  271. exch
  272. 4 1 roll
  273. do_ucrblack
  274. /b edf
  275. do_correct
  276. /y edf
  277. /m edf
  278. /c edf
  279. color 3 eq{c}if
  280. color 2 eq{m}if
  281. color 1 eq{y}if
  282. color 0 eq{b}if
  283. exch 3 div cvi exch    cvi
  284. 255.0 mul cvi
  285. st1 3 1 roll put}for st1}}ifelse
  286. i}ifelse}ifelse}{systemdict /colorimage known
  287. { multiproc ncolors systemdict /colorimage get exec}{ multiproc not{ncolors icomp}if}ifelse}ifelse}bdf}def
  288.